home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Precision Software Appli…tions Silver Collection 4
/
Precision Software Applications Silver Collection Volume 4 (1993).iso
/
stats
/
matcal11.exe
/
MATCALC.DOC
next >
Wrap
Text File
|
1992-05-25
|
15KB
|
576 lines
Matrix Calculator
version 1.1
(C) 1991, Wesley B. Loewer
Table of Contents
Topic Page
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Latest Version . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Entering New Matrices . . . . . . . . . . . . . . . . . . . . . . . . 3
Editing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
File options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Edit options . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Operations options . . . . . . . . . . . . . . . . . . . . . . . . . 6
In Closing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Manual Updated: May 25, 1992
Page 2
Introduction:
This piece of software allows a user to perform matrix operations
quickly and easily on large matrices. It has optimized routines for
finding inverses, determinants, matrix multiplication and addition and a
number of other operations as well. It allows the user to store
matrices in such a way that makes it easy to import into spreadsheet
programs.
The Latest Version:
The latest version of "MatCalc" can be found at
Data Warp Premium BBS
(713) 355-6107
Spring, TX
"MatCalc" is distributed as MATCAL??.ZIP, where the ?? represents the
version number. When passing "MatCalc" along to others, please
distribute all the files and documentation. Currently, the ZIP contains
the files MATCALC.EXE and MATCALC.DOC. See the end of this file for the
conditions in which this program may be used without charge.
Limitations:
The size of a matrix is limited to 50 rows and 50 columns. The
number of matrices that can be stored in memory at one time depends on
size of each matrix. There is enough room to store ten 25x25 matrices.
Hardware Requirements:
This program requires an IBM compatible with DOS 2.0 or later. It
does not require any graphics capability what-so-ever. The program
makes use of an optional mouse and math coprocessor
Matrix Calculator
Page 3
Getting Started:
To start the program, type MATCALC at the DOS prompt. The opening
screen should look like:
╔════════════════════════════╗
║ ║
║ Matrix Calculator ║
║ ║
╟────────────────────────────╢
║ (C) 1991, Wesley B. Loewer ║
╚════════════════════════════╝
To make a selection, hold the <ALT> key down and press the letter that
is highlighted on the menu; or place the mouse point on the selection
and click the left mouse button. If you are not in the editing screen,
holding the <ALT> key is not necessary.
┌────────────────────╖
│ New ║
│ Retrieve File ║
│ Retrieve Text File ║
╘════════════════════╝
New - To enter a completely new matrix, leads to the following menu.
Retrieve File - prompts you to enter the name of a binary matrix file.
Retrieve Text File - prompts you to enter the name of a tab or comma
delimited ASCII text file
If "New" was selected above, then the following menu appears:
┌───────────────╖
│ Matrix ║
│ Single Number ║
╘═══════════════╝
Matrix - indicates that you want to enter a matrix
Single Number - The Matrix Calculator can also handle real numbers.
If you selected "Matrix" then the next menu appears:
┌──────────────────────────╖
│ Number of Rows: 3 ║
│ Number of Columns: 3 ║
╘══════════════════════════╝
This menu is asking you to enter the size of the matrix. For
a matrix of size MxN, M is the number of rows and N is the
number of columns.
Matrix Calculator
Page 4
Editing:
At this point, the Matrix Calculator shows an editing screen in which
you may enter values for the matrix or single number. The following
keys have special meaning in the editing screen.
<F2> - Toggles between "Edit Mode" and "View Mode."
<Left>/<Right Arrow> - In "Edit Mode" causes the cursor to move
left/right in the edit window. In "View Mode" causes the selected
cell to move right/left.
<Up>/<Down Arrow> - Causes the selected cell to move up/down.
<Tab>/<Shift-Tab> - Causes the selected cell to move right/left.
<Home>/<End> - In "Edit Mode" causes the cursor to move to the
beginning/end of the entry. In "View Mode" causes the selected
cell to be the first/last cell in the row.
<Ctrl-Home>/<Ctrl-End> - Causes the selected cell to be the first/last
cell in the matrix.
<Left Mouse Button> - Clicking the left mouse button on a particular
cell causes that cell to be selected.
Working with Matrices:
Once a matrix has been entered, a number of things can be done with
the matrix. At the top of the screen a list of three main categories is
shown: File, Edit, and Operations. Each option under these headings is
explained below.
Matrix Calculator
Page 5
File options:
┌────────────────────╖
│ Save ║
│ Retrieve ║
│ Save as Text File ║
│ Retrieve Text File ║
│ Delete ║
├────────────────────╢
│ Print ║
├────────────────────╢
│ Exit Ctrl+X ║
╘════════════════════╝
Save - Saves the current matrix (matrix #0) as a binary file. The size
of the file will always be (rows x cols + 1) x 8 bytes long.
Binary files can be saved and retrieved much faster than text
files.
Retrieve - Retrieves a binary file replacing the current matrix.
Save as Text File - Saves the current matrix as an ASCII text file.
This allows the files to be imported by other spreadsheet programs.
If the elements are mostly integers, then the size of the file can
be considerably smaller than that of a binary file. On the other
hand, if the elements have mostly long decimals, then text files
can be bigger than binary files. In any case, using text files
always take more time to save and retrieve.
Retrieve Text File - Retrieves a text file replacing the current matrix.
Delete - Prompts the user to enter a filename to delete.
Print - Prints the current matrix to a printer connected to PRN:
Exit - Leaves the program. (Short-cut key is <Ctrl-X>.)
Edit options:
┌────────────────────────╖
│ Edit/view mode F2 ║
│ Store Ctrl+S ║
│ Recall Ctrl+R ║
│ New Ctrl+N ║
│ Clear ║
│ Clear All ║
╘════════════════════════╝
Edit/view mode - Toggle between "Edit Mode" and "View Mode." (Short-cut
key is <F2>.)
Store - Stores the current matrix in a memory location. Valid locations
are memory #1 - memory #9. (Short-cut key is <Ctrl-S>.)
Matrix Calculator
Page 6
Recall - Replaces the current matrix with the matrix from a memory
location. Valid locations are memory #1 - memory #9. (Short-cut
key is <Ctrl-R>.)
New - Clears the current matrix and allows the user to enter a new one.
Clear - Clears a particular memory location. Valid locations are memory
#1 - memory #9.
Clear All - Clears all the memory location except the current matrix
which is stored in memory #0.
Operations options:
┌───────────────────────────╖
│ Solve System of Equations ║
│ Determinant ║
│ Add ║
│ Multiply ║
│ Inverse ║
│ Transpose ║
│ Adjoint ║
│ Minor ║
│ Cofactor ║
│ Trace ║
│ Identity ║
╘═══════════════════════════╝
Solve System of Equations - Allows the user to very quickly solve a
system of linear equations. The matrix must have more columns than
rows in order to use this option.
Example: 3x + 2y = 1 and -x + y = 12 can be solved for x and y by
entering the matrix:
3 2 1
-1 1 12
and selecting "Solve System of Equations." The answers are
displayed in order in a column. You can also solve this system and
another at the same time if both system have the same coefficients.
For example: 3x + 2y = 5 and -x + y = 6 can be solved along with
the previous system by entering:
3 2 1 5
-1 1 12 6
and again select "Solve System of Equations." The first (x,y) pair
will be the first column while the second (x,y) pair is the second
column.
Determinant - Finds the determinant of the current matrix. The matrix
must have the same number of rows and columns in order to use this
option.
Add - Adds the current matrix to another matrix. In order to use this,
you must have already stored a matrix somewhere in memory. You can
add a matrix to itself by selecting memory #0. Both matrices used
must be the exact same size.
Matrix Calculator
Page 7
Multiply - Multiplies the current matrix times another matrix. In order
to use this, you must have already stored a matrix somewhere in
memory. You can multiply a matrix by itself by selecting memory
#0. The number of columns of the current matrix must be equal to
the number of rows in the selected memory location. If either
value is a single number instead of a matrix, then scaler
multiplication is performed.
Inverse - Finds the inverse of the current matrix. The matrix must have
the same number of rows and columns in order to use this option.
There is a size limit of 25x25 for this operation.
Transpose - Exchanges the rows and columns of the current matrix.
Adjoint - Finds the adjoint (sometimes called the adjugate) of the
current matrix.
Minor - Finds a minor of a particular row and column of the current
matrix.
Cofactor - Finds the cofactor of a particular row and column of the
current matrix.
Trace - Finds the trace (the sum of the diagonal) of the current matrix.
Identity - Generates an identity matrix of a specified size.
Matrix Calculator
Page 8
History
1.0 Original program
1.1 A few typo's were corrected in the documentation and a few message
screens were slightly changed
First version to be distributed through Data Warp BBS (see p. 2)
Matrix Calculator
Page 9
In Closing
A special word of thanks goes to my Physics and Algebra II students who
unknowingly were my beta testers. They are the reason I put these
programs together and made them publicly available.
This program is intended for use in educational settings only. As a
teacher, my reward comes from knowing that my efforts have been
fruitful. Although donations would be appreciated, the only payment
that I require is that each user send a letter or postcard letting me
know that he/she is using my program. Teachers may send a single letter
with the names (or at least the number) of students using the program
each year. This serves no purpose other than to give the author a pat
on the back and make him feel as though he has contributed to mankind.
If this program should prove useful to someone outside of an educational
setting (such as in a job or even research), a reasonable payment of $15
is required. If anyone is interested in the source code, please contact
me.
Copyright is retained by Wesley B. Loewer.
Please send any questions, suggestions, and contributions to:
Wesley B. Loewer or Wesley B. Loewer
78 S. Circlewood Glen McCullough High School
The Woodlands, TX 77381 3800 S. Panther Creek Dr.
(713) 292-3449 The Woodlands, TX 77381
(713) 367-1025 ext. 251
Matrix Calculator